One of the challenges in keeping up with rapid advances in mobile computing technology has been to maintain compatibility between newer mobile devices, such as a smart phone or a tablet computer, and applications that are not practical to be installed on the mobile devices. Some examples of such software applications are special purpose applications, such as photo editing software and diagramming software. In general, these software applications are too large and consume too much of the storage and memory resources of the mobile devices to be practically deployed in them. In newer mobile devices, storage and memory resources may be less scarce, but the limitation in such cases is not so much in hardware but in the cost of the software license. As a consequence, in order to view or edit a document that is not supported by the mobile device, the mobile device user has to carry out the cumbersome steps for converting the document or remotely accessing a different system that supports the file type of the document. In both cases, the additional steps lead to loss in user productivity and increased user frustration.